package spspublic.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
//import com.ruoyi.common.core.domain.BasePartyEntity;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 党费管理对象 t_dw_branch_dues
 *
 * @author wangwei
 * @date 2023-08-13
 */
@Data
public class TDwBranchDuesVo /**extends BasePartyEntity**/ {
  private static final long serialVersionUID = 1L;

  /** 单据唯一编号 */
  private String ctId;

  /** 单据编码 */
  @Excel(name = "单据编码")
  private String ctCode;

  /** 单据类型 */
  @Excel(name = "单据类型")
  private String ctType;

  /** 单据名称 */
  @Excel(name = "单据名称")
  private String ctName;

  /** 单据步骤 */
  @Excel(name = "单据步骤")
  private String ctCurStepno;

  /** 单据历史步骤 */
  @Excel(name = "单据历史步骤")
  private String ctHisStepno;

  /** 创建部门 */
  @Excel(name = "创建部门")
  private String ctCreateDept;

  /** 创建人 */
  @Excel(name = "创建人")
  private String ctCreateUser;

  /** 创建时间 */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
  private Date dtCreateDate;

  /** 发送人 */
  @Excel(name = "发送人")
  private String ctSendP;

  /** 接收人 */
  @Excel(name = "接收人")
  private String ctInceptP;

  /** 接收类型 */
  @Excel(name = "接收类型")
  private String ctInceptType;

  /** 上级编码 */
  @Excel(name = "上级编码")
  private String ctCodeP1;

  /** 本级编码 */
  @Excel(name = "本级编码")
  private String ctCodeP2;

  /** 是否签发 */
  @Excel(name = "是否签发")
  private String ctEnd;

  /** 备注 */
  @Excel(name = "备注")
  private String ctMark;

  /** 主从表关联字段 */
  @Excel(name = "主从表关联字段")
  private String ctIdP;

  /** Iso编号 */
  @Excel(name = "Iso编号")
  private String ctCodeIso;

  /** 功能号 */
  @Excel(name = "功能号")
  private String ctFunNo;

  /** 任务单单号 */
  @Excel(name = "任务单单号")
  private String ctTaskId;

  /** 更新人 */
  @Excel(name = "更新人")
  private String ctUpdateUser;

  /** 更新时间 */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
  private Date dtUpdateDate;

  /** 单据状态 */
  @Excel(name = "单据状态")
  private String ctState;

  /** 党组织编码 */
  @Excel(name = "党组织编码")
  private String ctBranch;

  /** 党费日期 */
  @JsonFormat(pattern = "yyyy-MM")
  @Excel(name = "党费日期", width = 30, dateFormat = "yyyy-MM-dd")
  private Date dtDate;

  /** 党费日期vo */
  @JsonFormat(pattern = "yyyy-MM")
  @Excel(name = "党费日期", width = 30, dateFormat = "yyyy-MM-dd")
  private Date dtDateVo;

  /** 实际上交日期 */
  @JsonFormat(pattern = "yyyy-MM-dd")
  @Excel(name = "实际上交日期", width = 30, dateFormat = "yyyy-MM-dd")
  private Date dtActualDate;

  /** 应交金额 */
  @Excel(name = "应交金额")
  private BigDecimal amTotalAmount;

  /** 应交人数 */
  @Excel(name = "应交人数")
  private Long amTotalPeople;

  /** 实交金额 */
  @Excel(name = "实交金额")
  private BigDecimal amRealAmount = BigDecimal.ZERO;

  /** 实交人数 */
  @Excel(name = "实交人数")
  private Long amRealPeople;

  /** 特殊党费金额 */
  @Excel(name = "特殊党费金额")
  private BigDecimal amSpecialAmount;

  /** 特殊金额说明 */
  @Excel(name = "特殊金额说明")
  private String ctSpecialDescription;

  /** 点击量 */
  @Excel(name = "点击量")
  private String amClickVolume;

  /** 备用字段1 0:未完成，1: 已完成 在一个单据结束时把单据置成已完成，把未完成的具体人员数据存到临时表里 */
  @Excel(name = "备用字段1")
  private String ctOther1;

  /** 备用字段2 */
  @Excel(name = "备用字段2")
  private String ctOther2;

  /** 备用字段3 */
  @Excel(name = "备用字段3")
  private String ctOther3;
}
